home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / src / X11 / wais / ftw / scantest.c < prev    next >
C/C++ Source or Header  |  1995-05-09  |  731b  |  44 lines

  1. #include <stdio.h>
  2. #include <sys/types.h>
  3. #include <sys/stat.h>
  4. #include "pdftw.h"
  5.  
  6. extern int alphasort();
  7.  
  8. static int
  9. filesonly(e)
  10.     struct dirent *e;
  11. {
  12.     struct stat sb;
  13.  
  14.     return(stat(e->d_name, &sb) >= 0 && (sb.st_mode & S_IFMT) == S_IFREG);
  15. }
  16.  
  17. main(ac, av)
  18.     int ac;
  19.     char *av[];
  20. {
  21.     register int i;
  22.     register int j;
  23.     struct dirent **list;
  24.  
  25.     if (ac != 2) {
  26.         fprintf(stderr, "usage: %s dirname\n", av[0]);
  27.         exit(1);
  28.     }
  29.     if (chdir(av[1]) < 0) {
  30.         perror(av[1]);
  31.         exit(1);
  32.     }
  33.     if ((i = scandir(".", &list, filesonly, alphasort)) < 0) {
  34.         perror("Error reading directory");
  35.         exit(1);
  36.     }
  37.     for (j = 0; j < i; j++)
  38.         printf("%s\n", list[j]->d_name);
  39.     for (j = 0; j < i; j++)
  40.         free((char *)list[j]);
  41.     free((char *)list);
  42.     exit(0);
  43. }
  44.